<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html lang="en">
<HEAD>

<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
<TITLE>Launching a program</TITLE>

<link rel="stylesheet" type="text/css" HREF="../book.css">
</HEAD>
<BODY BGCOLOR="#ffffff">
<h2>Launching a program</h2>
<p>The platform debug plug-ins allow your plug-in to extend the platform so that your
partiticular type of program can be launched from the workbench, obtaining input from the user if
necessary.  A unique type of program that can be launched in the platform is called a
<b>launch configuration type</b>. The class 
<a href="../reference/api/org/eclipse/debug/core/ILaunchConfiguration.html"><b>ILaunchConfiguration</b></a>
is used to describe a type of configuration.  A launch
configuration keeps a set of named attributes that can be used to store data
specific for a particular kind of launcher.</p>
<p>For each launch configuration type, there are different <b>modes</b> in which the 
configuration can be launched.  The platform defines modes for running, debugging, 
or profiling a program defined by a particular configuration.  Plug-ins are free to implement 
any or all of these launch modes for their 
particular launch configuration, or define new launch modes for any launch
configuration.</p>
<p>Plug-ins that contribute additional types of launchers do so by providing an 
<a href="../reference/api/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.html"><b>ILaunchConfigurationDelegate</b></a>
(or <a href="../reference/api/org/eclipse/debug/core/model/ILaunchConfigurationDelegate2.html"><b>ILaunchConfigurationDelegate2</b></a>)
that knows how to launch a program given the expected type and mode for launch configuration.&nbsp; Once the program
is launched, an <a href="../reference/api/org/eclipse/debug/core/ILaunch.html"><b>ILaunch</b>
</a>object is used to represent the launched session.&nbsp; This object can be
queried for information such as running processes, debug session information,
and source code location.&nbsp; A launch knows the configuration that was used to create
it.&nbsp; </p>
<p><img alt="" border="0" src="images/launch.jpg" > </p>
<p>Users interact with a launch
configuration dialog to set up the parameters for different types of
launches. These configurations can be
stored in a file to be shared with other users or stored locally in the workspace.</p>


</BODY>
</HTML>
